package com.service.Authorization.entity;

import java.io.Serializable;

/**
 * 授权终端用户认证表(AuthorizationUser)实体类
 *
 * @author makejava
 * @since 2021-07-31 16:01:42
 */
public class AuthorizationUser implements Serializable {
    private static final long serialVersionUID = 640982104029735719L;
    /**
     * 主键id
     */
    private String id;
    /**
     * 设备MAC地址，大小写不敏感，支持的格式：xx-xx-xx-xx-xx-xx/xx:xx:xx:xx:xx:xx/xxxxxxxxxxxx。
     */
    private String deviceMac;
    /**
     * 设备ESN地址，MAC和ESN至少有一个必填。
     */
    private String deviceEsn;
    /**
     * AP的MAC地址，大小写不敏感，支持的格式：xx-xx-xx-xx-xx-xx/xx:xx:xx:xx:xx:xx/xxxxxxxxxxxx。
     */
    private String apMac;
    /**
     * AP ssid名称的BASE64编码。
     */
    private String ssid;
    /**
     * 访问控制策略名称，为空时不做访问策略控制。
     */
    private String policyNme;
    /**
     * 该字段可能包含敏感信息和个人数据，请妥善做好保护。终端IPv4地址，terminalIpV4和terminalIpV6有且只有一个必填。
     */
    private String terminalIpV4;
    /**
     * 该字段可能包含敏感信息和个人数据，请妥善做好保护。终端IPv6地址，terminalIpV4和terminalIpV6有且只有一个必填。
     */
    private String terminalIpV6;
    /**
     * 该字段可能包含敏感信息和个人数据，请妥善做好保护。终端MAC大小写不敏感，支持的格式：xx-xx-xx-xx-xx-xx/xx:xx:xx:xx:xx:xx/xxxxxxxxxxxx。
     */
    private String terminalMac;
    /**
     * 用户名，不支持模糊匹配。
     */
    private String userName;
    /**
     * 授权节点地址，格式为IPv4。
     */
    private String nodeIp;
    /**
     * 临时放行时长，单位秒。报文中不传递此参数或取值为0时，终端用户访问网络无时间限制。
     */
    private Integer temPermitTime;
    /**
     * 第三方认证方式，不传递此参数时，默认为第三方认证。
     * 1. 用户名密码
     * 2. 匿名认证
     * 3. 短信认证
     * 4. 社交媒体认证
     * 5. 微信认证
     * 6. Passcode认证
     * 7. 第三方认证
     */
    private Integer thirdAuthType;
    /**
     * 会话id
     */
    private String psessionId;
    /**
     * 0：在线，1：下线
     */
    private String status;


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getDeviceMac() {
        return deviceMac;
    }

    public void setDeviceMac(String deviceMac) {
        this.deviceMac = deviceMac;
    }

    public String getDeviceEsn() {
        return deviceEsn;
    }

    public void setDeviceEsn(String deviceEsn) {
        this.deviceEsn = deviceEsn;
    }

    public String getApMac() {
        return apMac;
    }

    public void setApMac(String apMac) {
        this.apMac = apMac;
    }

    public String getSsid() {
        return ssid;
    }

    public void setSsid(String ssid) {
        this.ssid = ssid;
    }

    public String getPolicyNme() {
        return policyNme;
    }

    public void setPolicyNme(String policyNme) {
        this.policyNme = policyNme;
    }

    public String getTerminalIpV4() {
        return terminalIpV4;
    }

    public void setTerminalIpV4(String terminalIpV4) {
        this.terminalIpV4 = terminalIpV4;
    }

    public String getTerminalIpV6() {
        return terminalIpV6;
    }

    public void setTerminalIpV6(String terminalIpV6) {
        this.terminalIpV6 = terminalIpV6;
    }

    public String getTerminalMac() {
        return terminalMac;
    }

    public void setTerminalMac(String terminalMac) {
        this.terminalMac = terminalMac;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getNodeIp() {
        return nodeIp;
    }

    public void setNodeIp(String nodeIp) {
        this.nodeIp = nodeIp;
    }

    public Integer getTemPermitTime() {
        return temPermitTime;
    }

    public void setTemPermitTime(Integer temPermitTime) {
        this.temPermitTime = temPermitTime;
    }

    public Integer getThirdAuthType() {
        return thirdAuthType;
    }

    public void setThirdAuthType(Integer thirdAuthType) {
        this.thirdAuthType = thirdAuthType;
    }

    public String getPsessionId() {
        return psessionId;
    }

    public void setPsessionId(String psessionId) {
        this.psessionId = psessionId;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

}
